package ae.pcfc.cldos.online.common.tscdb.domain;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

import ae.pcfc.cldos.online.common.domain.BaseEntity;

/**
 * TTscClientPerson entity. @author Asna Khader
 */
@Entity
//@SqlResultSetMapping(name="result")//,        
		//columns = { @ColumnResult(name = "P_CP_TRAKHEES_ID")})
//@NamedNativeQuery(name = "singleClientPersonInsert", query = "call P_TSC_CLIENT_PERSON_INSERT(?,:P_TSC_PARTNER_SYSTEM_ID,:P_CP_NAMETITLE,:P_CP_NAME,:P_CP_NAME_ARB,:P_CP_NATIONALITY,:P_CP_DOB,:P_CP_GENDER,:P_CP_POBOX,:P_CP_POBOX_LOCATION,:P_CP_ADDRESS,:P_CP_ADDRESS_ARB,:P_CP_HOME_TEL,:P_CP_OFF_TEL,:P_CP_MOBILE1,:P_CP_MOBILE2,:P_CP_EMAIL,:P_CP_WEBSITE,:P_CP_PPNO,:P_CP_PP_POI,:P_CP_PP_DOI,:P_CP_PP_DOE,:P_CP_VISANO,:P_CP_V_TYPE,:P_CP_V_EXPIRY,:P_CP_EBDARA,:P_CP_CREATEDUSER,:P_CP_CREATEDTIME,:P_CP_MODIFIEDUSER,:P_CP_MODIFIEDTIME,:P_CP_STATUS,:P_CP_CITY,:P_CP_CITY_ARB,:P_CP_COUNTRY,:P_CP_COUNTRY_ARB,:P_CP_FAX,:P_CP_EMIRATES_ID,:P_CP_REMARKS,:P_CP_CATEGORY)", callable = true, resultSetMapping ="result", resultClass = TTscClientPerson.class)
//@NamedNativeQuery(name = "P_GET_CLNT_PERSON_BY_TKSID", query = "call P_GET_CLNT_PERSON_BY_TKSID(?,:P_TSC_PARTNER_SYSTEM_ID)", callable = true, resultSetMapping ="result", resultClass = TTscClientPerson.class)
@Table(name = "T_TSC_CLIENT_PERSON", uniqueConstraints = @UniqueConstraint(columnNames = "PIN_CODE"))
public class TTscClientPerson extends BaseEntity implements java.io.Serializable {

	// Fields

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private BigDecimal cpClientid;
	private BigDecimal cpNametitle;
	private String cpName;
	private String cpNameArb;
	private String cpNationality;
	private Date cpDob;
	private String cpGender;
	private String cpPobox;
	private String cpPoboxLocation;
	private String cpAddress;
	private String cpAddressArb;
	private String cpHomeTel;
	private String cpOffTel;
	private String cpMobile1;
	private String cpMobile2;
	private String cpEmail;
	private String cpWebsite;
	private String cpPpno;
	private String cpPpPoi;
	private Date cpPpDoi;
	private Date cpPpDoe;
	private String cpVisano;
	private String cpVType;
	private Date cpVExpiry;
	private String cpEbdara;
	private String cpCreateduser;
	private Date cpCreatedtime;
	private String cpModifieduser;
	private Date cpModifiedtime;
	private String cpStatus;
	private String cpCity;
	private String cpCityArb;
	private String cpCountry;
	private String cpCountryArb;
	private String cpFax;
	private String cpTrakheesId;
	private String cpEmiratesId;
	private String cpRemarks;
	private String cpCategory;
	private String pinCode;

	// Constructors

	/** default constructor */
	public TTscClientPerson() {
	}

	/** full constructor */
	public TTscClientPerson(BigDecimal cpNametitle, String cpName,
			String cpNameArb, String cpNationality, Date cpDob,
			String cpGender, String cpPobox, String cpPoboxLocation,
			String cpAddress, String cpAddressArb, String cpHomeTel,
			String cpOffTel, String cpMobile1, String cpMobile2,
			String cpEmail, String cpWebsite, String cpPpno, String cpPpPoi,
			Date cpPpDoi, Date cpPpDoe, String cpVisano, String cpVType,
			Date cpVExpiry, String cpEbdara, String cpCreateduser,
			Date cpCreatedtime, String cpModifieduser, Date cpModifiedtime,
			String cpStatus, String cpCity, String cpCityArb, String cpCountry,
			String cpCountryArb, String cpFax, String cpTrakheesId,
			String cpEmiratesId, String cpRemarks, String cpCategory,
			String pinCode) {
		this.cpNametitle = cpNametitle;
		this.cpName = cpName;
		this.cpNameArb = cpNameArb;
		this.cpNationality = cpNationality;
		this.cpDob = cpDob;
		this.cpGender = cpGender;
		this.cpPobox = cpPobox;
		this.cpPoboxLocation = cpPoboxLocation;
		this.cpAddress = cpAddress;
		this.cpAddressArb = cpAddressArb;
		this.cpHomeTel = cpHomeTel;
		this.cpOffTel = cpOffTel;
		this.cpMobile1 = cpMobile1;
		this.cpMobile2 = cpMobile2;
		this.cpEmail = cpEmail;
		this.cpWebsite = cpWebsite;
		this.cpPpno = cpPpno;
		this.cpPpPoi = cpPpPoi;
		this.cpPpDoi = cpPpDoi;
		this.cpPpDoe = cpPpDoe;
		this.cpVisano = cpVisano;
		this.cpVType = cpVType;
		this.cpVExpiry = cpVExpiry;
		this.cpEbdara = cpEbdara;
		this.cpCreateduser = cpCreateduser;
		this.cpCreatedtime = cpCreatedtime;
		this.cpModifieduser = cpModifieduser;
		this.cpModifiedtime = cpModifiedtime;
		this.cpStatus = cpStatus;
		this.cpCity = cpCity;
		this.cpCityArb = cpCityArb;
		this.cpCountry = cpCountry;
		this.cpCountryArb = cpCountryArb;
		this.cpFax = cpFax;
		this.cpTrakheesId = cpTrakheesId;
		this.cpEmiratesId = cpEmiratesId;
		this.cpRemarks = cpRemarks;
		this.cpCategory = cpCategory;
		this.pinCode = pinCode;
	}

	// Property accessors
	@Id
	@Column(name = "CP_CLIENTID", unique = true, nullable = false, precision = 22, scale = 0)
	public BigDecimal getCpClientid() {
		return this.cpClientid;
	}

	public void setCpClientid(BigDecimal cpClientid) {
		this.cpClientid = cpClientid;
	}

	@Column(name = "CP_NAMETITLE", precision = 22, scale = 0)
	public BigDecimal getCpNametitle() {
		return this.cpNametitle;
	}

	public void setCpNametitle(BigDecimal cpNametitle) {
		this.cpNametitle = cpNametitle;
	}

	@Column(name = "CP_NAME", length = 50)
	public String getCpName() {
		return this.cpName;
	}

	public void setCpName(String cpName) {
		this.cpName = cpName;
	}

	@Column(name = "CP_NAME_ARB", length = 50)
	public String getCpNameArb() {
		return this.cpNameArb;
	}

	public void setCpNameArb(String cpNameArb) {
		this.cpNameArb = cpNameArb;
	}

	@Column(name = "CP_NATIONALITY", length = 20)
	public String getCpNationality() {
		return this.cpNationality;
	}

	public void setCpNationality(String cpNationality) {
		this.cpNationality = cpNationality;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "CP_DOB", length = 7)
	public Date getCpDob() {
		return this.cpDob;
	}

	public void setCpDob(Date cpDob) {
		this.cpDob = cpDob;
	}

	@Column(name = "CP_GENDER", length = 1)
	public String getCpGender() {
		return this.cpGender;
	}

	public void setCpGender(String cpGender) {
		this.cpGender = cpGender;
	}

	@Column(name = "CP_POBOX", length = 10)
	public String getCpPobox() {
		return this.cpPobox;
	}

	public void setCpPobox(String cpPobox) {
		this.cpPobox = cpPobox;
	}

	@Column(name = "CP_POBOX_LOCATION", length = 10)
	public String getCpPoboxLocation() {
		return this.cpPoboxLocation;
	}

	public void setCpPoboxLocation(String cpPoboxLocation) {
		this.cpPoboxLocation = cpPoboxLocation;
	}

	@Column(name = "CP_ADDRESS", length = 100)
	public String getCpAddress() {
		return this.cpAddress;
	}

	public void setCpAddress(String cpAddress) {
		this.cpAddress = cpAddress;
	}

	@Column(name = "CP_ADDRESS_ARB", length = 200)
	public String getCpAddressArb() {
		return this.cpAddressArb;
	}

	public void setCpAddressArb(String cpAddressArb) {
		this.cpAddressArb = cpAddressArb;
	}

	@Column(name = "CP_HOME_TEL", length = 20)
	public String getCpHomeTel() {
		return this.cpHomeTel;
	}

	public void setCpHomeTel(String cpHomeTel) {
		this.cpHomeTel = cpHomeTel;
	}

	@Column(name = "CP_OFF_TEL", length = 20)
	public String getCpOffTel() {
		return this.cpOffTel;
	}

	public void setCpOffTel(String cpOffTel) {
		this.cpOffTel = cpOffTel;
	}

	@Column(name = "CP_MOBILE1", length = 20)
	public String getCpMobile1() {
		return this.cpMobile1;
	}

	public void setCpMobile1(String cpMobile1) {
		this.cpMobile1 = cpMobile1;
	}

	@Column(name = "CP_MOBILE2", length = 20)
	public String getCpMobile2() {
		return this.cpMobile2;
	}

	public void setCpMobile2(String cpMobile2) {
		this.cpMobile2 = cpMobile2;
	}

	@Column(name = "CP_EMAIL", length = 50)
	public String getCpEmail() {
		return this.cpEmail;
	}

	public void setCpEmail(String cpEmail) {
		this.cpEmail = cpEmail;
	}

	@Column(name = "CP_WEBSITE", length = 50)
	public String getCpWebsite() {
		return this.cpWebsite;
	}

	public void setCpWebsite(String cpWebsite) {
		this.cpWebsite = cpWebsite;
	}

	@Column(name = "CP_PPNO", length = 20)
	public String getCpPpno() {
		return this.cpPpno;
	}

	public void setCpPpno(String cpPpno) {
		this.cpPpno = cpPpno;
	}

	@Column(name = "CP_PP_POI", length = 30)
	public String getCpPpPoi() {
		return this.cpPpPoi;
	}

	public void setCpPpPoi(String cpPpPoi) {
		this.cpPpPoi = cpPpPoi;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "CP_PP_DOI", length = 7)
	public Date getCpPpDoi() {
		return this.cpPpDoi;
	}

	public void setCpPpDoi(Date cpPpDoi) {
		this.cpPpDoi = cpPpDoi;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "CP_PP_DOE", length = 7)
	public Date getCpPpDoe() {
		return this.cpPpDoe;
	}

	public void setCpPpDoe(Date cpPpDoe) {
		this.cpPpDoe = cpPpDoe;
	}

	@Column(name = "CP_VISANO", length = 20)
	public String getCpVisano() {
		return this.cpVisano;
	}

	public void setCpVisano(String cpVisano) {
		this.cpVisano = cpVisano;
	}

	@Column(name = "CP_V_TYPE", length = 20)
	public String getCpVType() {
		return this.cpVType;
	}

	public void setCpVType(String cpVType) {
		this.cpVType = cpVType;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "CP_V_EXPIRY", length = 7)
	public Date getCpVExpiry() {
		return this.cpVExpiry;
	}

	public void setCpVExpiry(Date cpVExpiry) {
		this.cpVExpiry = cpVExpiry;
	}

	@Column(name = "CP_EBDARA", length = 20)
	public String getCpEbdara() {
		return this.cpEbdara;
	}

	public void setCpEbdara(String cpEbdara) {
		this.cpEbdara = cpEbdara;
	}

	@Column(name = "CP_CREATEDUSER", length = 30)
	public String getCpCreateduser() {
		return this.cpCreateduser;
	}

	public void setCpCreateduser(String cpCreateduser) {
		this.cpCreateduser = cpCreateduser;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "CP_CREATEDTIME", length = 7)
	public Date getCpCreatedtime() {
		return this.cpCreatedtime;
	}

	public void setCpCreatedtime(Date cpCreatedtime) {
		this.cpCreatedtime = cpCreatedtime;
	}

	@Column(name = "CP_MODIFIEDUSER", length = 30)
	public String getCpModifieduser() {
		return this.cpModifieduser;
	}

	public void setCpModifieduser(String cpModifieduser) {
		this.cpModifieduser = cpModifieduser;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "CP_MODIFIEDTIME", length = 7)
	public Date getCpModifiedtime() {
		return this.cpModifiedtime;
	}

	public void setCpModifiedtime(Date cpModifiedtime) {
		this.cpModifiedtime = cpModifiedtime;
	}

	@Column(name = "CP_STATUS", length = 1)
	public String getCpStatus() {
		return this.cpStatus;
	}

	public void setCpStatus(String cpStatus) {
		this.cpStatus = cpStatus;
	}

	@Column(name = "CP_CITY", length = 30)
	public String getCpCity() {
		return this.cpCity;
	}

	public void setCpCity(String cpCity) {
		this.cpCity = cpCity;
	}

	@Column(name = "CP_CITY_ARB", length = 30)
	public String getCpCityArb() {
		return this.cpCityArb;
	}

	public void setCpCityArb(String cpCityArb) {
		this.cpCityArb = cpCityArb;
	}

	@Column(name = "CP_COUNTRY", length = 30)
	public String getCpCountry() {
		return this.cpCountry;
	}

	public void setCpCountry(String cpCountry) {
		this.cpCountry = cpCountry;
	}

	@Column(name = "CP_COUNTRY_ARB", length = 30)
	public String getCpCountryArb() {
		return this.cpCountryArb;
	}

	public void setCpCountryArb(String cpCountryArb) {
		this.cpCountryArb = cpCountryArb;
	}

	@Column(name = "CP_FAX", length = 20)
	public String getCpFax() {
		return this.cpFax;
	}

	public void setCpFax(String cpFax) {
		this.cpFax = cpFax;
	}

	@Column(name = "CP_TRAKHEES_ID", length = 50)
	public String getCpTrakheesId() {
		return this.cpTrakheesId;
	}

	public void setCpTrakheesId(String cpTrakheesId) {
		this.cpTrakheesId = cpTrakheesId;
	}

	@Column(name = "CP_EMIRATES_ID", length = 50)
	public String getCpEmiratesId() {
		return this.cpEmiratesId;
	}

	public void setCpEmiratesId(String cpEmiratesId) {
		this.cpEmiratesId = cpEmiratesId;
	}

	@Column(name = "CP_REMARKS", length = 300)
	public String getCpRemarks() {
		return this.cpRemarks;
	}

	public void setCpRemarks(String cpRemarks) {
		this.cpRemarks = cpRemarks;
	}

	@Column(name = "CP_CATEGORY", length = 10)
	public String getCpCategory() {
		return this.cpCategory;
	}

	public void setCpCategory(String cpCategory) {
		this.cpCategory = cpCategory;
	}

	@Column(name = "PIN_CODE", unique = true, length = 10)
	public String getPinCode() {
		return this.pinCode;
	}

	public void setPinCode(String pinCode) {
		this.pinCode = pinCode;
	}

}